草庐IT

iOS crash捕获:NSSetUncaughtExceptionHandler

全部标签

Windows VEH - 捕获并丢弃 SINGLE_STEP 异常

在我通过DLL注入(inject)修改的第3方应用程序中,有一段代码毫无意义地抛出了EXCEPTION_SINGLE_STEP异常。我希望捕获该异常并将其完全丢弃。但是,Windows不断重新抛出它,因此我的异常处理程序陷入了无限循环。我目前的代码:LONGWINAPIVEH_Handler(struct_EXCEPTION_POINTERS*ExceptionInfo){printf("Gotanexception%Xataddress%X\n",ExceptionInfo->ExceptionRecord->ExceptionCode,ExceptionInfo->Exceptio

c++ - 在 Windows 8.1 中捕获 PC 的整个屏幕截图

我正在制作一个截取整个屏幕截图的C++程序。我面临着一个很大的问题。当我运行该程序时,它只截取控制台屏幕的屏幕截图,而不是整个桌面。HDCScreen=CreateDC(L"DISPLAY",NULL,NULL,NULL);HDCCapture=CreateCompatibleDC(Screen);intwidth=GetDeviceCaps(Screen,HORZRES);intheight=GetDeviceCaps(Screen,VERTRES);LPBYTElpcapture;BITMAPINFObmiCapture={{sizeof(BITMAPINFOHEADER),wid

c++ - 如何在 Windows x64 C++ 应用程序中捕获堆栈溢出

我正在尝试将应用程序编译为Windows中的x64平台架构。处理脚本语言解析的几个线程使用此代码recommendedbyMicrosofttotrapstackoverflowsandavoidaccessviolationexceptions:__try{DoSomethingThatMightUseALotOfStackMemory();}__except(EXCEPTION_EXECUTE_HANDLER){LPBYTElpPage;staticSYSTEM_INFOsi;staticMEMORY_BASIC_INFORMATIONmi;staticDWORDdwOldProt

C# WinForms Tray 应用程序 - 不捕获 Windows 关闭事件

我正在编写一个监视状态的程序。它启动主窗口(LoginForm)以询问用户凭据,然后隐藏表单。在LoginForm初始化NotifyIcon之后,所有剩余的工作都在隐藏LoginForm的情况下完成。我已经在LoginForm的FormClosing事件中实现了所有清理工作。在正常退出过程中,一切正常。问题是该程序一直位于托盘中,我往往会忘记在关闭Windows之前退出它-程序不会在关闭事件时保存状态。我已经阅读了许多论坛和文档,并且从我所阅读的内容来看,事件FormClosing/FormClosed+SessionEnding/SessionEnded无论如何都必须触发。但看起来他

windows - 能否完全捕获 Windows 控制台应用程序的控制台输出(包括高级操作)?

重定向控制台程序的标准输入/输出是一件微不足道的事情,但如果程序使用高级控制台功能呢?就像输出彩色文本、四处移动光标和直接操作控制台缓冲区一样?是否也可以捕获并重定向到我自己的程序进行处理?注意:我说的是我的应用程序(不一定是控制台应用程序)运行控制台应用程序并将其输入/输出重定向到自身的场景。注意2:最后我想要C#代码,但现在让我们坚持使用裸Win32API和C或C++。无论如何,我认为没有PInvoke是不可能的,所以让我们先了解一下基本原则(如果可能的话)。 最佳答案 与Linux不同,所有颜色IO都不会通过简单的重定向来捕获

c++ - 是否可以通过 Windows 键(可能没有钩子(Hook))捕获 Windows 开始菜单弹出窗口?

我一直在研究输入事件系统。我映射了我自己键盘上的所有键、扫描码等,包括两个Windows键。当我按下它们时,程序成功地为它们接收了不同的按键事件,没有任何问题。然而,当我松开按键时,“开始”菜单会弹出,在Windows模式下隐藏程序,甚至在全屏模式下将其最小化。所以我的问题在于抑制它。Arma2,一款军事模拟器/游戏,允许将命令毫无问题地映射到这些键上。我必须在哪里catch那个事件?只要它有焦点,我可以为我自己的窗口做吗?只要它正在运行,我是否会被禁用的win-key卡住?还是别的?谷歌搜索主要是没有结果,因为Windowskey也指的是产品key,当我确实找到一些东西时,它通常会完

c# - 如何使用 Windows MediaCapture API 捕获 "Audio Only"?

我正在尝试通过WindowsMediaCaptureAPI捕获“仅音频”。我正在使用以下代码但出现异常(HRESULT:0xC00D36D5)。MediaCapturecaptureMgr=newMediaCapture();MediaCaptureInitializationSettingscaptureSettings=newMediaCaptureInitializationSettings();captureSettings.StreamingCaptureMode=StreamingCaptureMode.Audio;awaitcaptureMgr.InitializeAsy

c - 是否可以在 NDIS 层捕获本地主机数据包(127.0.0.1 作为目标)?

我正在为WinPcap和Nmap开发Win7和Win8的NDIS6过滤器驱动程序。如您所知,Nmap是一种网络扫描仪。Nmap的一个要求是捕获本地主机数据包,如“ping127.0.0.1”,以便Nmap也可以测试本地机器本身。然而,本地主机数据包似乎只会在TCP/IP堆栈中返回,而不会到达NDIS层。有什么办法可以解决这个问题吗?比如添加环回适配器或什么?谢谢。 最佳答案 您需要WFP标注来捕获第3层环回数据包。TCPIP有一个快速环回路径,它永远不会到达NDIS中的第2层。 关于c-

C++/WIndows - 无法捕获异常

我是Windowsapi的初学者,所以这里一定有我不明白的地方。在我的主要功能中,我使用try-catch来捕获所有未捕获的异常,但由于某种原因,我从代码中其他地方抛出的异常从未被捕获。我的应用程序使用单个(主)线程。我是这样扔的:throw"ClassName::methodName()-Errormessage";并在消息循环之外捕获异常:try{while(GetMessage(args...)){TranslateMessage(args...);DispatchMessage(args...);}}catch(constchar*sExc){::MessageBox(args

c# - 捕获 ASP.NET C# 中的所有异常,而不是 `try{} catch{}` block 中的每个方法

有没有更好的方法可以在一个地方捕获所有异常而无需为每个方法编写try{}catch{}? 最佳答案 您可以通过覆盖Global.asax中的Application_Error来捕获应用程序中的异常。但是,使用这种方法,您无法像使用常规trycatchblock那样处理这些异常。你可以记录它voidApplication_Error(objectsender,EventArgse){Exceptionex=Server.GetLastError();//ifthere'sanInnerExceptionwe'llmostlikelyb